---
title: SAIF.Business.Policy dependencies
summary: Internal and external dependencies for the shared base policy library.
status: draft
owner: SAIF Claims BOF team
last_reviewed: 2026-08-21
library: SAIF.Business.Policy
reference_type: embedded
---

# SAIF.Business.Policy dependencies

## Internal dependencies

`SAIF.Business.Policy.vbproj` contains no `<ProjectReference>` elements — this library has **no outbound internal dependencies** within this repository. All references are binary/NuGet references. It sits at the base of the dependency graph for the policy domain.*

| Dependency | Reference Type | Usage |
| --- | --- | --- |
| _None_ | N/A | This library has no outbound project or same-repo package dependencies. |

## External dependencies

| Dependency | Version | Usage |
| --- | --- | --- |
| SAIF.BOF.Framework (Core/Bindable/Connection/DNS/Logging/Mail/Security/Security.EnvironmentApi) | 2.0.22279.1 | Supplies `clsBusinessBase`†, `clsBusinessCollection`†, `clsSmartDate`, `clsSmartString`, `clsSAIFDataReader`, `clsResultSet`, `clsCodeTableBase`, `IDataPortalInfo`, `IBusinessCriteria`, `IPortalRequest`, `IDataRequest`, `IDataAccess`, `DataRequestType`, `clsConstants`, confirmed via `Imports SAIF.Framework`. |
| SAIF.BOF.Business (assembly `SAIF.Business`) | 2.1.23088.1 | Declared via `Imports SAIF.Business` in the project file; no direct type usage confirmed in scanned source.** |
| Oracle.ManagedDataAccess | 21.5.0 | Not used directly in code — registered only via `app.config`/`Web.config` `DbProviderFactories`; actual Oracle access is mediated by the BOF framework's data portal.* |
| SAIF.Framework.Common | 2.0.22074.3 | No direct type usage confirmed in scanned source.** |
| SAIF.HashUtil | 2.0.22083.2 | No direct type usage confirmed in scanned source.** |
| SAIF.ResourceFiles (assembly `SAIF.ResourceFiles`) | 2.0.23088.1 | No direct type usage confirmed in scanned source.** |
| SAIF.Web.API.Clients (Clients/Core) | 2.0.22307.1 | No direct type usage confirmed in scanned source.** |
| SAIF.Legacy.BankValidator (assembly `BankValidator`) | 2.0.22097.1 | No direct type usage confirmed in scanned source.** |
| Autofac | 3.5.2 | No direct type usage confirmed in scanned source.** |
| FluentValidation | 5.5.0.0 | No direct type usage confirmed in scanned source.** |
| ImagingAPI.Client (Client/Core) | 2.0.22112.4 | No direct type usage confirmed in scanned source.** |
| iTextSharp | 5.5.11 | No direct type usage confirmed in scanned source.** |
| log4net | 2.0.5 | No direct type usage confirmed in scanned source.** |
| Newtonsoft.Json | 8.0.3 | No direct type usage confirmed in scanned source.** |
| PdfAPI.Client (Client/Core) | 1.2.20094.1 | No direct type usage confirmed in scanned source.** |
| RestSharp | 106.12.0 | No direct type usage confirmed in scanned source.** |
| Microsoft.AspNet.WebApi.* (Client/Core/WebHost) | 5.2.7 | No direct type usage confirmed in scanned source.** |
| Microsoft.Bcl.AsyncInterfaces, System.Buffers, System.Memory, System.Numerics.Vectors, System.Runtime.CompilerServices.Unsafe, System.Text.Encodings.Web, System.Text.Json, System.Threading.Tasks.Extensions, System.ValueTuple | various | Transitive dependencies of `System.Text.Json`; not used directly by this library's code.* |

The large surplus of unused references is typical of a shared template `.vbproj` used across the Legal solution's business-tier projects; most reflect solution-wide boilerplate rather than this library's actual runtime dependencies.*

## Transitive dependencies

Dependencies in this section are inherited from the `SAIF.Framework.Core` framework library through the `clsBusinessBase`/`clsBusinessCollection` base classes used by `clsHazardGroup`/`clsHazardGroupCollection` (framework density 2). They are not directly referenced by this library but are required at runtime through the framework package.

| Dependency | Source framework | Type | Usage |
| --- | --- | --- | --- |
| `clsRulesManager` | `SAIF.Framework.Core` | Transitive | Owned internally by `clsBusinessBase`-derived objects (`clsHazardGroup`) for rule registration/enforcement (`Rules.CheckRules(...)`) and broken-rule tracking surfaced via `IDataErrorInfo`; `clsBusinessBase` is tied to the V1 rules engine, with no observed wiring of V2 `RuleManager` types.† |
| `clsRetrieveOnlyBusinessCriteria` | `SAIF.Framework.Core` | Transitive | Base retrieve-only criteria pattern underlying `clsHazardGroup.Criteria` and `clsHazardGroupCollection.Criteria`, whose mutating SQL properties throw `ApplicationException("SQL property not available.")` consistent with this framework contract.† |
| Sibling framework projects (`SAIF.Framework.Security`, `SAIF.Framework.Connection`, `SAIF.Framework.Logging`, `SAIF.Framework.DNS`, `SAIF.Framework.Security.EnvironmentApi`, `SAIF.Framework.Bindable`) | `SAIF.Framework.Core` | Transitive | Referenced by `SAIF.Framework.Core` itself, which `clsBusinessBase`/`clsBusinessCollection` sit within; not directly referenced by this library's code.† |

## Dependency risks and notes
- This library has zero outbound project references, making it a true dependency-graph "leaf/base" for the policy domain; any breaking change here has broad downstream impact on consumers (`SAIF.Business.View.Policy`, `SAIF.Business.Policy.Core`, `SAIF.Business.Policy.Rating`, `SAIF.Business.Policy.Premium`, `SAIF.Application.Policy`) rather than the reverse.*
- The large list of externally-referenced packages with no confirmed direct usage (`SAIF.HashUtil`, `SAIF.ResourceFiles`, `SAIF.Web.API.Clients`, `SAIF.Legacy.BankValidator`, `Autofac`, `FluentValidation`, `ImagingAPI.Client`, `iTextSharp`, `log4net`, `Newtonsoft.Json`, `PdfAPI.Client`, `RestSharp`, `Microsoft.AspNet.WebApi.*`) is most likely transitive/template boilerplate shared across the Legal solution's business-tier `.vbproj` files rather than dependencies this library relies on directly; treat with caution when assessing upgrade impact.*
- `PolicyInformation`'s ad hoc data-access properties bypass the BOF `Criteria`/`IBusinessCriteria` pattern and have no confirmed null/`DBNull` handling on scalar results, which could raise unhandled cast exceptions if a query returns no matching row.**
- The generated `Institutions` typed `DataSet` has no confirmed consumer within this library's own source; its purpose and dependency implications could not be confirmed from the scanned files.**
- Downstream project references exist from `SAIF.Business.Policy.Core`, `SAIF.Business.Policy.Rating`, `SAIF.Business.Policy.Premium`, and `SAIF.Application.Policy` to this library, but specific member-level usage in those consumers was not traced (out of scope for this run's target library).*

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified. Statements marked with †
> were retrieved from a dependency library's own documentation via the Legends CLI RAG service.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)
- [SAIF.Business.View.Policy](../saif-business-view-policy/overview.md)

## Sources
- `.saifdocgen/state/runs/20260821-113120-claims-bof-web-legal/analysis/TSK006-analysis.md`
- `.saifdocgen/state/runs/20260821-113120-claims-bof-web-legal/analysis/TSK1B-004-dbanalysis-saif-business-policy.md`
- `.saifdocgen/state/runs/20260821-113120-claims-bof-web-legal/dependency-resolution.json`
